System.Collections.ObjectModel.KeyedCollection<TKey,TItem>. Metoda ChangeItemKey
Tento článek obsahuje doplňující poznámky k referenční dokumentaci pro toto rozhraní API.
Metoda ChangeItemKey(TItem, TKey) neupravuje klíč vložený item
do ; jednoduše nahradí klíč uložený ve vyhledávacím slovníku. Proto pokud newKey
se liší od klíče, který je vložen v item
, nelze získat přístup item
pomocí klíče vráceného GetKeyForItem.
Tato metoda nedělá nic, pokud KeyedCollection<TKey,TItem> nemá vyhledávací slovník.
Každý klíč v klíči KeyedCollection<TKey,TItem> musí být jedinečný. Klíč nemůže být null
.
Tato metoda je operace O(1).
Poznámky pro implementátory
Před úpravou klíče vloženého do položky je nutné zavolat tuto metodu, chcete-li aktualizovat klíč ve vyhledávacím slovníku. Pokud je prahová hodnota vytvoření slovníku -1, volání této metody není nutné.
Nezpřístupňujte metodu ChangeItemKey jako veřejnou metodu odvozené třídy. Zneužití této metody nesynchronizuje vyhledávací slovník s klíči položek. Například nastavení klíče na null
jinou hodnotu přidá do vyhledávacího slovníku více klíčů pro položku. Zpřístupnit tuto metodu interně tak, aby umožňovala měnitelné klíče položek: Když se klíč položky změní, tato metoda se použije ke změně klíče ve vyhledávacím slovníku.